// pages/cssCase/cardVoucher/index.js
const db = wx.cloud.database()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    user: {}, //基本信息
    yilist: [], //已使用优惠卷
    list: [], //展示优惠卷
    weilist: [], //使用优惠卷
    curTab: 0, //使用未使用判断
    tab_lsit: ['未使用', '已使用'],
  },
  // 点击使用卡片
  shiyong(e) {
    wx.requestSubscribeMessage({
      tmplIds: ['kC-NoxMdiSMZWexpw72En9bxx41uoDp1g1NrORXfc-w','VW3Rknu5JUoik5Rnt50i1fx3Og2M13W0y7q_foGSgU8'],
      success: res => {
        // 授权成功后的处理逻辑
        console.log('用户授权成功', res);
      }
    })
    wx.login({
      success: res => {
        console.log(res);
        if (res.code) {
          let ccooddee = res;
          if (e.currentTarget.dataset.shuju.checked) {
            wx.showModal({
              title: '提示',
              content: '确定使用嘛',
              success: res => {
                if (res.confirm) {
                  console.log('用户点击确定')
                  // console.log(e);
                  let data = e.currentTarget.dataset
                  console.log(data);
                  //使用此卷
                  data.shuju.checked = false;
                  console.log(data);
                  let arr = this.data.list
                  // arr[data.index] = data.shuju
                  arr.splice(data.index, 1);
                  let lis1t = this.data.weilist
                  lis1t.push(data.shuju)
                  this.setData({
                    yilist: arr,
                    weilist: lis1t,
                  })
                  wx.showLoading({
                    title: '稍稍一等',
                  })
                  let user = this.data.user
                  wx.cloud.callFunction({
                    name: 'shiyongkapian', // 这里调用名为login的云开发函数
                    data: {
                      shuju: data.shuju,
                      user: user,
                      code: ccooddee
                    },
                    success: res => {
                      console.log(res);
                      if (res.result) {
                        wx.showToast({
                          title: '成功',
                          icon: 'success',
                          duration: 2000
                        })
                      }
                    }
                  })
                } else if (res.cancel) {
                  console.log('用户点击取消')
                }
              }
            })
          }
        }
      }
    })

  },
  /**
   * 生命周期函数--监听页面加载
   */
  async onLoad(options) {
    var value = wx.getStorageSync('autt')
    if (value) {
      this.setData({
        user: value.user
      }) // Do something with return value
    }
    this.initdata()
  },
  //初始化数据
  async initdata() {
    let a = await this.getDateBus()
    console.log(a);
    let arr = a.data
    let shiyonglist = []
    let weishiyong = []
    for (let i = 0; i < arr.length; i++) {
      const e = arr[i];
      if (e.checked) {
        weishiyong.push(e)
      } else {
        if (e.df) {
          shiyonglist.unshift(e)

        } else {
          shiyonglist.push(e)
        }

      }
    }
    this.setData({
      list: weishiyong,
      yilist: weishiyong,
      weilist: shiyonglist,
    })
  },
  // 查询数据库找到自己的卷数目
  async getDateBus() {
    const MAX_LIMIT = 20;
    // 先取出集合记录总数
    const countResult = await db.collection(this.data.user.gouwuche).count()
    const total = countResult.total
    // 计算需分几次取
    const batchTimes = Math.ceil(total / 20)
    // 承载所有读操作的 promise 的数组
    const tasks = []
    for (let i = 0; i < batchTimes; i++) {
      const promise = db.collection(this.data.user.gouwuche).skip(i * MAX_LIMIT).limit(MAX_LIMIT).get()
      tasks.push(promise)
    }

    return (await Promise.all(tasks)).reduce((acc, cur) => {
      return {
        data: acc.data.concat(cur.data),
        errMsg: acc.errMsg,
      }
    })
  },
  //使用未使用
  tabNav(e) {
    let {
      index
    } = e.currentTarget.dataset;
    if (this.data.curTab === index || index === undefined) {
      return false;
    } else {
      this.setData({
        curTab: index,
      })
    }
    if (index == 0) {
      let ARr = this.data.yilist
      this.setData({
        list: ARr
      })
    } else {
      let ARr = this.data.weilist
      this.setData({
        list: ARr
      })
    }
  },












  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  },




})